PROCEDURE GetMediaHandlerDescription(theMedia: Media; VAR mediaType: OSType; VAR creatorName: Str255; VAR creatorManufacturer: OSType);
{$IFC NOT GENERATINGCFM}
INLINE $706F, $AAAA;
{$ENDC}
FUNCTION GetMediaUserData(theMedia: Media): UserData;
{$IFC NOT GENERATINGCFM}
INLINE $7070, $AAAA;
{$ENDC}
{************************
* Media Handler routines
*************************}
FUNCTION GetMediaHandler(theMedia: Media): MediaHandler;
{$IFC NOT GENERATINGCFM}
INLINE $7071, $AAAA;
{$ENDC}
FUNCTION SetMediaHandler(theMedia: Media; mH: MediaHandlerComponent): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $190, $AAAA;
{$ENDC}
{************************
* Media's Data routines
*************************}
FUNCTION BeginMediaEdits(theMedia: Media): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $7072, $AAAA;
{$ENDC}
FUNCTION EndMediaEdits(theMedia: Media): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $7073, $AAAA;
{$ENDC}
FUNCTION SetMediaDefaultDataRefIndex(theMedia: Media; index: INTEGER): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $1E0, $AAAA;
{$ENDC}
PROCEDURE GetMediaDataHandlerDescription(theMedia: Media; index: INTEGER; VAR dhType: OSType; VAR creatorName: Str255; VAR creatorManufacturer: OSType);
{$IFC NOT GENERATINGCFM}
INLINE $303C, $19E, $AAAA;
{$ENDC}
FUNCTION GetMediaDataHandler(theMedia: Media; index: INTEGER): DataHandler;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $19F, $AAAA;
{$ENDC}
FUNCTION SetMediaDataHandler(theMedia: Media; index: INTEGER; dataHandler: DataHandlerComponent): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $1A0, $AAAA;
{$ENDC}
FUNCTION GetDataHandler(dataRef: Handle; dataHandlerSubType: OSType; flags: LONGINT): Component;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $1ED, $AAAA;
{$ENDC}
{************************
* Media Sample Table Routines
*************************}
FUNCTION GetMediaSampleDescriptionCount(theMedia: Media): LONGINT;
FUNCTION AddMediaSampleReference(theMedia: Media; dataOffset: LONGINT; size: LONGINT; durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: LONGINT; sampleFlags: INTEGER; VAR sampleTime: TimeValue): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $707D, $AAAA;
{$ENDC}
FUNCTION AddMediaSampleReferences(theMedia: Media; sampleDescriptionH: SampleDescriptionHandle; numberOfSamples: LONGINT; sampleRefs: SampleReferencePtr; VAR sampleTime: TimeValue): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $1F7, $AAAA;
{$ENDC}
FUNCTION GetMediaSample(theMedia: Media; dataOut: Handle; maxSizeToGrow: LONGINT; VAR size: LONGINT; time: TimeValue; VAR sampleTime: TimeValue; VAR durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; VAR sampleDescriptionIndex: LONGINT; maxNumberOfSamples: LONGINT; VAR numberOfSamples: LONGINT; VAR sampleFlags: INTEGER): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $707E, $AAAA;
{$ENDC}
FUNCTION GetMediaSampleReference(theMedia: Media; VAR dataOffset: LONGINT; VAR size: LONGINT; time: TimeValue; VAR sampleTime: TimeValue; VAR durationPerSample: TimeValue; sampleDescriptionH: SampleDescriptionHandle; VAR sampleDescriptionIndex: LONGINT; maxNumberOfSamples: LONGINT; VAR numberOfSamples: LONGINT; VAR sampleFlags: INTEGER): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $707F, $AAAA;
{$ENDC}
FUNCTION SetMediaPreferredChunkSize(theMedia: Media; maxChunkSize: LONGINT): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $1F8, $AAAA;
{$ENDC}
FUNCTION GetMediaPreferredChunkSize(theMedia: Media; VAR maxChunkSize: LONGINT): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $1F9, $AAAA;
{$ENDC}
FUNCTION SetMediaShadowSync(theMedia: Media; frameDiffSampleNum: LONGINT; syncSampleNum: LONGINT): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $121, $AAAA;
{$ENDC}
FUNCTION GetMediaShadowSync(theMedia: Media; frameDiffSampleNum: LONGINT; VAR syncSampleNum: LONGINT): OSErr;
FUNCTION GetVideoMediaGraphicsMode(mh: MediaHandler; VAR graphicsMode: LONGINT; VAR opColor: RGBColor): HandlerError;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $8, $101, $7000, $A82A;
{$ENDC}
FUNCTION SetVideoMediaGraphicsMode(mh: MediaHandler; graphicsMode: LONGINT; {CONST}VAR opColor: RGBColor): HandlerError;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $8, $102, $7000, $A82A;
{$ENDC}
{************************
* Sound Media routines
*************************}
FUNCTION GetSoundMediaBalance(mh: MediaHandler; VAR balance: INTEGER): HandlerError;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $4, $101, $7000, $A82A;
{$ENDC}
FUNCTION SetSoundMediaBalance(mh: MediaHandler; balance: INTEGER): HandlerError;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $2, $102, $7000, $A82A;
{$ENDC}
{************************
* Text Media routines
*************************}
{ Return displayFlags for TextProc }
CONST
txtProcDefaultDisplay = 0; { Use the media's default}
txtProcDontDisplay = 1; { Don't display the text}
txtProcDoDisplay = 2; { Do display the text}
FUNCTION SetTextProc(mh: MediaHandler; TextProc: TextMediaUPP; refcon: LONGINT): ComponentResult;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $8, $101, $7000, $A82A;
{$ENDC}
FUNCTION AddTextSample(mh: MediaHandler; text: Ptr; size: LONGINT; fontNumber: INTEGER; fontSize: INTEGER; textFace: Style; VAR textColor: RGBColor; VAR backColor: RGBColor; textJustification: INTEGER; VAR textBox: Rect; displayFlags: LONGINT; scrollDelay: TimeValue; hiliteStart: INTEGER; hiliteEnd: INTEGER; VAR rgbHiliteColor: RGBColor; duration: TimeValue; VAR sampleTime: TimeValue): ComponentResult;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $34, $102, $7000, $A82A;
{$ENDC}
FUNCTION AddTESample(mh: MediaHandler; hTE: TEHandle; VAR backColor: RGBColor; textJustification: INTEGER; VAR textBox: Rect; displayFlags: LONGINT; scrollDelay: TimeValue; hiliteStart: INTEGER; hiliteEnd: INTEGER; VAR rgbHiliteColor: RGBColor; duration: TimeValue; VAR sampleTime: TimeValue): ComponentResult;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $26, $103, $7000, $A82A;
{$ENDC}
FUNCTION AddHiliteSample(mh: MediaHandler; hiliteStart: INTEGER; hiliteEnd: INTEGER; VAR rgbHiliteColor: RGBColor; duration: TimeValue; VAR sampleTime: TimeValue): ComponentResult;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $10, $104, $7000, $A82A;
{$ENDC}
CONST
findTextEdgeOK = 1 * (2**(0)); { Okay to find text at specified sample time}
findTextCaseSensitive = 1 * (2**(1)); { Case sensitive search}
findTextReverseSearch = 1 * (2**(2)); { Search from sampleTime backwards}
findTextWrapAround = 1 * (2**(3)); { Wrap search when beginning or end of movie is hit}
findTextUseOffset = 1 * (2**(4)); { Begin search at the given character offset into sample rather than edge}
FUNCTION FindNextText(mh: MediaHandler; text: Ptr; size: LONGINT; findFlags: INTEGER; startTime: TimeValue; VAR foundTime: TimeValue; VAR foundDuration: TimeValue; VAR offset: LONGINT): ComponentResult;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $1A, $105, $7000, $A82A;
{$ENDC}
FUNCTION HiliteTextSample(mh: MediaHandler; sampleTime: TimeValue; hiliteStart: INTEGER; hiliteEnd: INTEGER; VAR rgbHiliteColor: RGBColor): ComponentResult;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $C, $106, $7000, $A82A;
{$ENDC}
CONST
dropShadowOffsetType = 'drpo';
dropShadowTranslucencyType = 'drpt';
FUNCTION SetTextSampleData(mh: MediaHandler; data: UNIV Ptr; dataType: OSType): ComponentResult;
{$IFC NOT GENERATINGCFM}
INLINE $2F3C, $8, $107, $7000, $A82A;
{$ENDC}
FUNCTION MovieSearchText(theMovie: Movie; text: Ptr; size: LONGINT; searchFlags: LONGINT; VAR searchTrack: Track; VAR searchTime: TimeValue; VAR searchOffset: LONGINT): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $303C, $207, $AAAA;
{$ENDC}
PROCEDURE GetPosterBox(theMovie: Movie; VAR boxRect: Rect);
PROCEDURE GetTrackLoadSettings(theTrack: Track; VAR preloadTime: TimeValue; VAR preloadDuration: TimeValue; VAR preloadFlags: LONGINT; VAR defaultHints: LONGINT);
{$IFC NOT GENERATINGCFM}
INLINE $303C, $1E4, $AAAA;
{$ENDC}
CONST
MovieControllerComponentType = 'play';
TYPE
MovieController = ComponentInstance;
CONST
mcActionIdle = 1; { no param}
mcActionDraw = 2; { param is WindowPtr}
mcActionActivate = 3; { no param}
mcActionDeactivate = 4; { no param}
mcActionMouseDown = 5; { param is pointer to EventRecord}
mcActionKey = 6; { param is pointer to EventRecord}
mcActionPlay = 8; { param is Fixed, play rate}
mcActionGoToTime = 12; { param is TimeRecord}
mcActionSetVolume = 14; { param is a short}
mcActionGetVolume = 15; { param is pointer to a short}
mcActionStep = 18; { param is number of steps (short)}
mcActionSetLooping = 21; { param is Boolean}
mcActionGetLooping = 22; { param is pointer to a Boolean}
mcActionSetLoopIsPalindrome = 23; { param is Boolean}
mcActionGetLoopIsPalindrome = 24; { param is pointer to a Boolean}
mcActionSetGrowBoxBounds = 25; { param is a Rect}
mcActionControllerSizeChanged = 26; { no param}
mcActionSetSelectionBegin = 29; { param is TimeRecord}
mcActionSetSelectionDuration = 30; { param is TimeRecord, action only taken on set-duration}
mcActionSetKeysEnabled = 32; { param is Boolean}
mcActionGetKeysEnabled = 33; { param is pointer to Boolean}
mcActionSetPlaySelection = 34; { param is Boolean}
mcActionGetPlaySelection = 35; { param is pointer to Boolean}
mcActionSetUseBadge = 36; { param is Boolean}
mcActionGetUseBadge = 37; { param is pointer to Boolean}
mcActionSetFlags = 38; { param is long of flags}
mcActionGetFlags = 39; { param is pointer to a long of flags}
mcActionSetPlayEveryFrame = 40; { param is Boolean}
mcActionGetPlayEveryFrame = 41; { param is pointer to Boolean}
mcActionGetPlayRate = 42; { param is pointer to Fixed}
mcActionShowBalloon = 43; { param is a pointer to a boolean. set to false to stop balloon}
mcActionBadgeClick = 44; { param is pointer to Boolean. set to false to ignore click}
mcActionMovieClick = 45; { param is pointer to event record. change “what” to nullEvt to kill click}
mcActionSuspend = 46; { no param}
mcActionResume = 47; { no param}
mcActionSetControllerKeysEnabled = 48; { param is Boolean}
mcActionGetTimeSliderRect = 49; { param is pointer to rect}
mcActionMovieEdited = 50; { no param}
mcActionGetDragEnabled = 51; { param is pointer to Boolean}
mcActionSetDragEnabled = 52; { param is Boolean}
TYPE
mcAction = INTEGER;
CONST
mcFlagSuppressMovieFrame = 1 * (2**(0));
mcFlagSuppressStepButtons = 1 * (2**(1));
mcFlagSuppressSpeakerButton = 1 * (2**(2));
mcFlagsUseWindowPalette = 1 * (2**(3));
mcFlagsDontInvalidate = 1 * (2**(4));
mcPositionDontInvalidate = 1 * (2**(5));
TYPE
mcFlags = LONGINT;
MCActionFilterProcPtr = ProcPtr; { FUNCTION MCActionFilter(mc: MovieController; VAR action: INTEGER; params: UNIV Ptr): BOOLEAN; }